/**
 * 
 */
$(function() {
	//列表
	easyExt.initDataGrid('#tg','/voucher/voucher'); //显示当月凭证
	easyExt.initDataGrid('#dg','/voucher/getVoucherItem');
	
	//添加凭证
	$("#add").click(function(){
		$.ajax({
            url:easyExt.url+'/voucher/getVoucherId',  
            dataType:'json',  
            success:function(data){
            	$("#voucherId").html(Number(data.voucherId)+1);
            }
         });
		//用于判断选择的时间是不是关账了
		var theDate;
		$.ajax({
            url:easyExt.url+'/kmqcye/getLastCloseTime',  
            dataType:'json',  
            success:function(data){
            	// 取得上次关账时间的字符串
            	str = data.date;
            	// 转换日期格式  "2010/08/01"
            	str = str.replace(/-/g, '/'); 
            	// 创建日期对象
            	var date = new Date(str);
            	// 设置为此月最后一天，以此判断整个月不可选
            	date.setDate(1);
            	date.setMonth(date.getMonth()+1);//设置为下个月第一天
            	theDate = new Date(date.getTime()-1000*60*60*24);//下个月第一天减去一天，即是这个月最后一天
            }
         });
		//判断时间是否可选
		$("#date").datebox({
		    onSelect:function(date){
		        var nowDate = new Date();  
		        if(date>nowDate){
		            $("#date").datebox("setValue","");  
		            $.messager.alert("提示", "未来时间不可选！", "error");
		        }else if(date<=theDate){
		        	$("#date").datebox("setValue","");  
		            $.messager.alert("提示", "已关账的时间不可选！", "error");
		        }
		    }
		}); 
		easyExt.addVoucher('/voucher/add');
	});
	
	//本月关账
	$("#close").click(function(){
		$.messager.confirm('提示', '是否进行本月关账?', function (r) {
            if (!r) {
                return;
            }
            $.ajax({
                url:easyExt.url+'/kmqcye/close',
                dataType:'json',  
                success:function(data){
                	if(data[0].success){
        				$.messager.show({
        					title: '提示',
        					msg: data[0].msg,
        					timeout:2000
        				});
        				$('#tg').datagrid({url:easyExt.url + "/voucher/voucher"}); //重定向url 
        			}else{
        				$.messager.alert("提示", data[0].msg, "error"); 
        			}
                }
             });
        });
	});
	
	//显示所有凭证
	$("#showAll").click(function(){
		easyExt.initDataGrid('#tg','/voucher/list');
	});
	
	//添加查询实现，可以按任意条件组合查询
	$("#search").click(function(){
		$('#searchForm').form('clear');
		$('#searchDialog').dialog({
			iconCls:'icon-search',
			title:'凭证查询',  
			buttons:[{
					text:'查询',
					handler:function(){
						var voucherId = $("#voucherid").val();
						var maker = $("#themaker").val();
						var date1 = $("#date1").datebox('getValue');
						var date2 = $("#date2").datebox('getValue');
						if(date1=="" && date2 == "" && voucherId =="" && maker ==""){
							$.messager.alert("提示", "请输入查询条件！", "info");
							return;
						}else{
							if((date1=="" && date2 != "") || (date1!="" && date2 == "")){
								$.messager.alert("提示", "请输入完整的时间范围！", "info");
								return;
							}else{
								easyExt.initDataGrid('#tg','/voucher/searchVoucher?date1='+date1+"&date2="+date2+"&voucherId="+voucherId+"&maker="+maker);
								$('#searchDialog').dialog('close');
							}
						}
					}
				},{
					text:'取消',
					handler:function(){
						$('#searchDialog').dialog('close');
				}
		    }]
		});
		$('#searchDialog').dialog('open');
	});
	
	//修改凭证实现
	$("#edit").click(function(){
		var selRows=$('#tg').datagrid('getSelected');
		$('#addForm').form('clear');
		if(selRows==null){
			$.messager.alert("提示", "请选择要修改的凭证！", "info");  
			return;
		}else if(selRows.isClose==1){
			$.messager.alert("提示", "已关账的凭证不可修改！", "error");  
			return;
		}else{
			$('#addDialog').dialog({
				iconCls:'icon-edit',
				title:'修改凭证明细',
			    buttons:[{
					text:'保存',
					handler:function(){
						$('#edg').edatagrid('saveRow');
						var totalDA=0,totalCA=0;
						var rows = $("#edg").edatagrid("getRows"); //获取当前页的所有行
						for(var i=0;i<rows.length;i++)
						{
						//获取每一行的数据
						totalDA=easyExt.accAdd(Number(totalDA),Number(rows[i].debitAmount));
						totalCA=easyExt.accAdd(Number(totalCA),Number(rows[i].creditAmount));
						}
						$("#debitAmount").html(totalDA);
						$("#creditAmount").html(totalCA);
						if(Number(totalDA)==Number(totalCA)){
							//将表单数据转换为json
							var voucher={};
							var voucherHead={};
							voucherHead.voucherId=selRows.voucherId;
							var voucherItem = $("#edg").edatagrid("getData");
							voucher.voucher = voucherHead;
							voucher.voucherItem = voucherItem.rows;
							var json = JSON.stringify(voucher);
							//调用ajax
							$.ajax({  
		                        url:easyExt.url+'/voucher/edit',  
		                        data :{"voucher" : json},  
		                        dataType:'json',  
		                        success:function(data){
		                			if(data.success){
		                				$.messager.show({
		                					title: '提示',
		                					msg: data.msg,
		                					timeout:2000
		                				});
		                				$('#addDialog').dialog('close');
		                				$('#tg').datagrid('clearSelections');
		        						$('#tg').datagrid('reload');
		        						$('#dg').datagrid('load',{voucherId:selRows.voucherId});
		                			}else{
		                				$.messager.alert("提示", data.msg, "error"); 
		                			}   
		                        },   
		                        error:function(){  
		                         $.messager.alert('提示',"错误", "error");         
		                        }
		                     });
						}else{
							$.messager.alert("提示", "借贷金额不平衡！", "info");  
							return;
						}
					}
			      },{
					text:'取消',
					handler:function(){
						$('#addDialog').dialog('close');
				    }
		        }]
			});
			//读取凭证信息显示在编辑对话框上
			$('#addDialog').dialog('open');
			$("#voucherId").html(selRows.voucherId);
			$("#date").datebox('setValue',selRows.date);
			$("#maker").html(selRows.maker);
			$("#debitAmount").html("");
			$("#creditAmount").html("");
			//从后台获取凭证明细信息
			easyExt.initDataGrid('#edg','/voucher/getVoucherItem?voucherId='+selRows.voucherId);
		}
	});	
	
	
});
